# 2025.06.21力扣网刷题
# 统计平方和三元组的数目——数学、枚举——简单
# 一个 平方和三元组(a, b, c) 指的是满足 a2 + b2 = c2 的 整数 三元组 a，b 和 c 。
# 给你一个整数 n ，请你返回满足 1 <= a, b, c <= n 的 平方和三元组 的数目。
# 示例 1：
# 输入：n = 5
# 输出：2
# 解释：平方和三元组为(3, 4, 5) 和(4, 3, 5) 。
# 示例 2：
# 输入：n = 10
# 输出：4
# 解释：平方和三元组为(3, 4, 5)，(4, 3, 5)，(6, 8, 10) 和(8, 6, 10) 。
# 提示：
# 1 <= n <= 250

class Solution(object):
    def countTriples(self, n):
        """
        :type n: int
        :rtype: int
        """
        count = 0
        for a in range(3, n):
            for b in range(3, n):
                c = int((a ** 2 + b ** 2) ** 0.5)
                if c <= n and c ** 2 == a ** 2 + b ** 2:
                    count += 1
        return count